The present application relates to software and more specifically to user interface designs and methods for facilitating access to and implementation of functionality provided by underlying software.
Efficient user interface designs and accompanying methods are particularly important in enterprise applications, where inefficient or cumbersome user interfaces can create costly delays and require excessive use of scarce computing resources. For the purposes of the present discussion, an enterprise may be any organization of personnel and other resources. Examples of organizations include businesses, schools or universities, governments, non-profit organizations, and so on. Similarly, an enterprise application may be any software application designed for use by an enterprise, such as to facilitate running, managing, and/or documenting operations of the enterprise.
Enterprise software applications, such as Customer Relationship Management (CRM), Business Intelligence (BI), and Enterprise Resource Planning (ERP) software, often include databases with various database objects. A database object may be any collection of data, such as data pertaining to a particular financial account, asset, employee, contact, and so on. Examples of database objects include, but are not limited to, records, tables, or other database entities corresponding to accounts receivables, products, employees, customers, business resources, and so on.
Each database object may be associated with a particular identifier. Such identifiers may be complex data strings, also called codes. In certain enterprise applications, such identifiers may be specified by software end users. For the purposes of the present discussion, a complex data string may be any identifier that may include one or more segments, and which is used to identify a particular business entity or database object.
Conventionally, enterprise software applications that use complex data strings require users to navigate multiple dialog boxes (also simply called dialogs) or windows to manipulate complex data strings as desired. For example, searching for existing complex data strings; viewing search results; validating entered complex data strings; creating complex data strings; and so on, may require user interaction with multiple cumbersome dialog boxes, windows, and other user interface controls (e.g., buttons, fields, and so on). The requisite multiple user interface interactions may be both undesirably time consuming and computing-resource intensive.